package com.ry.gramar;

public class Test {

    static class B {
    }

    static class A extends B {
    }

    static class C extends B {
    }

    interface D<T extends B> {
        void test(T b);
    }

    static class E<T> implements D<A> {

        public void test(A a) {

        }
    }

    static class F implements D<C> {

        @Override
        public void test(C b) {
        }
    }


    public static void main(String[] args) {
        E e = new E();
        e.test(new A());

        F f =new F();
        f.test(new C());

    }

}
